第11,12行 '{' 错误

来源:百度知道 编辑:UC知道 时间:2024/06/29 22:53:28
main()
{
struct stu
{
int num;
char *name;
char sex;
float score;
}boy2,boy1;

boy2={102,"Zhang ping",'M',78.5};
boy1={103,"li ling ",'F',78.5};
printf("Number Name sex score");
printf("%d %s %c %f",boy2.num,boy2.name,boy2.sex,boy2.score);
}

第11,12行 '{' 错误

初始化不能那样
#include<stdio.h>
void main()
{
struct stu
{
int num;
char *name;
char sex;
float score;
}boy2={102,"Zhang ping",'M',78.5},boy1={103,"li ling ",'F',78.5};

//boy2;
//boy1;
printf("Number Name sex score");
printf("%d %s %c %f",boy2.num,boy2.name,boy2.sex,boy2.score);
}

结构体变量只有在声明语句中直接初始化的时候,才能用{}里面加各个成员的值这种形式。
而且name应该用char [],不能用char *,比如应该用char [20]这样

正确的写法是
boy2.num=102;
strcpy(boy2.name,"Zhang ping";
boy2.sex='M';
boy2.score=78.5

用分号吧
boy2={102,"Zhang ping",'M',78.5}; 改为boy2={102;"Zhang ping";'M';78.5}; boy1同样